Skip to content

[C#] GenHTTP: Update to 10.5.1#662

Merged
MDA2AV merged 6 commits intoMDA2AV:mainfrom
Kaliumhexacyanoferrat:genhttp-10.5.1
Apr 27, 2026
Merged

[C#] GenHTTP: Update to 10.5.1#662
MDA2AV merged 6 commits intoMDA2AV:mainfrom
Kaliumhexacyanoferrat:genhttp-10.5.1

Conversation

@Kaliumhexacyanoferrat
Copy link
Copy Markdown
Collaborator

Description

Fixing serving pre-compressed files in static.


PR Commands — comment on this PR to trigger (requires collaborator approval):

Command Description
/benchmark -f <framework> Run all benchmark tests
/benchmark -f <framework> -t <test> Run a specific test
/benchmark -f <framework> --save Run and save results (updates leaderboard on merge)

Always specify -f <framework>. Results are automatically compared against the current leaderboard.


Run benchmarks locally

You can validate and benchmark your framework locally with the lite script — no CPU pinning, fixed connection counts, all load generators run in Docker.

./scripts/validate.sh <framework>
./scripts/benchmark-lite.sh <framework> baseline
./scripts/benchmark-lite.sh --load-threads 4 <framework>

Requirements: Docker Engine on Linux. Load generators (gcannon, h2load, h2load-h3, wrk, ghz) are built as self-contained Docker images on first run.

@Kaliumhexacyanoferrat Kaliumhexacyanoferrat self-assigned this Apr 27, 2026
@Kaliumhexacyanoferrat
Copy link
Copy Markdown
Collaborator Author

/benchmark -f genhttp -t static

@github-actions
Copy link
Copy Markdown
Contributor

👋 /benchmark request received. A collaborator will review and approve the run.

@Kaliumhexacyanoferrat
Copy link
Copy Markdown
Collaborator Author

/benchmark -f genhttp-kestrel -t static static-h2 static-h3

@github-actions
Copy link
Copy Markdown
Contributor

👋 /benchmark request received. A collaborator will review and approve the run.

@github-actions
Copy link
Copy Markdown
Contributor

Benchmark Results

Framework: genhttp | Test: static

Test Conn RPS CPU Mem Δ RPS Δ Mem
static 1024 258,578 5631.3% 542MiB +61.9% -10.9%
static 4096 252,422 5779.7% 1.3GiB +44.8% -7.1%
static 6800 246,355 5914.6% 2.0GiB +45.6% +11.1%
Full log
#5 DONE 0.0s

#6 [stage-1 1/3] FROM mcr.microsoft.com/dotnet/runtime:10.0@sha256:8fb7ff015fcf0ebc6e90105bd6db06875954e6dc3d374b9dbb34c732867d13e4
#6 resolve mcr.microsoft.com/dotnet/runtime:10.0@sha256:8fb7ff015fcf0ebc6e90105bd6db06875954e6dc3d374b9dbb34c732867d13e4 0.1s done
#6 DONE 0.1s

#7 [build 1/6] FROM mcr.microsoft.com/dotnet/sdk:10.0@sha256:8a90a473da5205a16979de99d2fc20975e922c68304f5c79d564e666dc3982fc
#7 resolve mcr.microsoft.com/dotnet/sdk:10.0@sha256:8a90a473da5205a16979de99d2fc20975e922c68304f5c79d564e666dc3982fc 0.1s done
#7 DONE 0.1s

#5 [internal] load build context
#5 transferring context: 1.59kB done
#5 DONE 0.0s

#8 [stage-1 2/3] WORKDIR /app
#8 CACHED

#9 [build 2/6] WORKDIR /source
#9 CACHED

#10 [build 3/6] COPY genhttp.csproj ./
#10 CACHED

#11 [build 4/6] RUN dotnet restore
#11 CACHED

#12 [build 5/6] COPY . .
#12 CACHED

#13 [build 6/6] RUN dotnet publish -c Release --no-self-contained -o /app
#13 CACHED

#14 [stage-1 3/3] COPY --from=build /app .
#14 CACHED

#15 exporting to image
#15 exporting layers done
#15 exporting manifest sha256:277d0dd6e1a64233492ea1fbdc438b4b870ba85fa8c5679391e9c94132ca2809 done
#15 exporting config sha256:1aec801955ab43a796901eb6dce01c0a6a9145e9ce667fd51d8379e64d7bf62b done
#15 exporting attestation manifest sha256:1a1278d97194823f35dfccfd70af46c4f848b449ec21eaf4b0d81df385606c17 0.1s done
#15 exporting manifest list sha256:c4d07006694f1cf7b2e397deaecda35aba1fcacddbcc34c20d8f3ff6acfe24da
#15 exporting manifest list sha256:c4d07006694f1cf7b2e397deaecda35aba1fcacddbcc34c20d8f3ff6acfe24da 0.0s done
#15 naming to docker.io/library/httparena-genhttp:latest done
#15 unpacking to docker.io/library/httparena-genhttp:latest done
#15 DONE 0.2s
[info] tuning host for benchmark runs
[info] CPU governor → performance
[info] setting kernel socket limits
[info] setting UDP buffer sizes for QUIC
[info] setting loopback MTU to 1500 (realistic Ethernet)
[info] restarting docker daemon
[info] dropping kernel caches
[info] starting postgres sidecar
[info] postgres ready (seeded)
[info] starting redis sidecar (cpuset=0,64)
[info] redis ready

==============================================
=== genhttp / static / 1024c (tool=wrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
Running 5s test @ http://localhost:8080
  64 threads and 1024 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    11.89ms   14.93ms 126.62ms   82.64%
    Req/Sec     2.64k   606.13     4.96k    74.59%
  855927 requests in 5.08s, 15.33GB read
Requests/sec: 168444.87
Transfer/sec:      3.02GB
[info] CPU 5771.1% | Mem 418MiB

[run 2/3]
Running 5s test @ http://localhost:8080
  64 threads and 1024 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     5.79ms    6.51ms  32.92ms   84.94%
    Req/Sec     4.06k   409.86    10.24k    96.17%
  1318791 requests in 5.10s, 23.63GB read
Requests/sec: 258578.76
Transfer/sec:      4.63GB
[info] CPU 5631.3% | Mem 542MiB

[run 3/3]
Running 5s test @ http://localhost:8080
  64 threads and 1024 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     5.48ms    5.78ms  26.57ms   82.66%
    Req/Sec     4.05k   431.24    11.36k    98.13%
  1313654 requests in 5.10s, 23.54GB read
Requests/sec: 257561.24
Transfer/sec:      4.62GB
[info] CPU 5609.6% | Mem 633MiB

=== Best: 258578 req/s (CPU: 5631.3%, Mem: 542MiB) ===
[info] saved results/static/1024/genhttp.json
httparena-bench-genhttp
httparena-bench-genhttp

==============================================
=== genhttp / static / 4096c (tool=wrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
Running 5s test @ http://localhost:8080
  64 threads and 4096 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    24.44ms   18.09ms 257.62ms   71.25%
    Req/Sec     2.65k   770.37     5.55k    86.46%
  797563 requests in 5.10s, 14.26GB read
  Non-2xx or 3xx responses: 6
Requests/sec: 156368.77
Transfer/sec:      2.80GB
[info] CPU 5808.0% | Mem 862MiB

[run 2/3]
Running 5s test @ http://localhost:8080
  64 threads and 4096 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    16.38ms    8.83ms  49.71ms   70.15%
    Req/Sec     3.97k   622.74    24.43k    95.89%
  1287249 requests in 5.10s, 23.04GB read
Requests/sec: 252377.22
Transfer/sec:      4.52GB
[info] CPU 5827.2% | Mem 1.0GiB

[run 3/3]
Running 5s test @ http://localhost:8080
  64 threads and 4096 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    16.33ms    8.64ms  52.61ms   69.67%
    Req/Sec     3.97k   584.74    18.55k    95.83%
  1287552 requests in 5.10s, 23.06GB read
Requests/sec: 252422.03
Transfer/sec:      4.52GB
[info] CPU 5779.7% | Mem 1.3GiB

=== Best: 252422 req/s (CPU: 5779.7%, Mem: 1.3GiB) ===
[info] saved results/static/4096/genhttp.json
httparena-bench-genhttp
httparena-bench-genhttp

==============================================
=== genhttp / static / 6800c (tool=wrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
Running 5s test @ http://localhost:8080
  64 threads and 6800 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    40.28ms   27.15ms 313.46ms   83.65%
    Req/Sec     2.56k   816.30     6.34k    82.62%
  779271 requests in 5.10s, 13.94GB read
Requests/sec: 152772.20
Transfer/sec:      2.73GB
[info] CPU 5669.1% | Mem 975MiB

[run 2/3]
Running 5s test @ http://localhost:8080
  64 threads and 6800 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    27.50ms   12.93ms 235.67ms   83.12%
    Req/Sec     3.88k   539.46    13.25k    89.62%
  1256247 requests in 5.10s, 22.51GB read
Requests/sec: 246355.74
Transfer/sec:      4.41GB
[info] CPU 5914.6% | Mem 2.0GiB

[run 3/3]
Running 5s test @ http://localhost:8080
  64 threads and 6800 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    28.18ms   13.68ms 243.25ms   82.50%
    Req/Sec     3.83k   710.63    27.17k    93.56%
  1241826 requests in 5.10s, 22.24GB read
Requests/sec: 243478.58
Transfer/sec:      4.36GB
[info] CPU 5810.5% | Mem 2.0GiB

=== Best: 246355 req/s (CPU: 5914.6%, Mem: 2.0GiB) ===
[info] saved results/static/6800/genhttp.json
httparena-bench-genhttp
httparena-bench-genhttp
[info] rebuilding site/data/*.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/frameworks.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-6800.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
httparena-postgres
httparena-redis
[info] restoring loopback MTU to 65536
[info] restoring CPU governor → powersave

@Kaliumhexacyanoferrat
Copy link
Copy Markdown
Collaborator Author

/benchmark -f genhttp-kestrel -t static static-h2 static-h3 --save

@github-actions
Copy link
Copy Markdown
Contributor

👋 /benchmark request received. A collaborator will review and approve the run.

@github-actions
Copy link
Copy Markdown
Contributor

Benchmark Results

Framework: genhttp-kestrel | Test: static

Test Conn RPS CPU Mem Δ RPS Δ Mem
static 1024 119,185 6181.7% 666MiB -8.4% +90.8%
static 4096 123,063 6273.7% 1.6GiB -16.9% +80.8%
static 6800 120,238 6268.2% 1.8GiB -23.1% +38.5%
Full log

#6 [stage-1 1/5] FROM mcr.microsoft.com/dotnet/aspnet:10.0@sha256:55e37c7795bfaf6b9cc5d77c155811d9569f529d86e20647704bc1d7dd9741d4
#6 resolve mcr.microsoft.com/dotnet/aspnet:10.0@sha256:55e37c7795bfaf6b9cc5d77c155811d9569f529d86e20647704bc1d7dd9741d4 0.1s done
#6 DONE 0.1s

#7 [internal] load build context
#7 transferring context: 1.28kB done
#7 DONE 0.0s

#8 [stage-1 2/5] ADD https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb /packages-microsoft-prod.deb
#8 DONE 0.4s

#9 [build 6/6] RUN dotnet publish -c Release --no-self-contained -o /app
#9 CACHED

#10 [stage-1 2/5] ADD https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb /packages-microsoft-prod.deb
#10 CACHED

#11 [build 2/6] WORKDIR /source
#11 CACHED

#12 [build 3/6] COPY genhttp.csproj ./
#12 CACHED

#13 [stage-1 3/5] RUN dpkg -i packages-microsoft-prod.deb && rm packages-microsoft-prod.deb     && apt-get update     && apt-get install -y --no-install-recommends libmsquic     && apt-get clean     && rm -rf /var/lib/apt/lists/*
#13 CACHED

#14 [stage-1 4/5] WORKDIR /app
#14 CACHED

#15 [build 4/6] RUN dotnet restore
#15 CACHED

#16 [build 5/6] COPY . .
#16 CACHED

#17 [stage-1 5/5] COPY --from=build /app .
#17 CACHED

#18 exporting to image
#18 exporting layers done
#18 exporting manifest sha256:43c78a4e878f1a71ea0d983ff9fed52a731489f138ea899ff59cabf80ed5f87d done
#18 exporting config sha256:bf9d459b7408ba86c231cb9a9137ec127a30f880aae932f9168e936a2b0d30b9 done
#18 exporting attestation manifest sha256:bb340fa3c95450824a4698ff3c355b6d43fa03094eee40198418cfd7939a9b2a 0.0s done
#18 exporting manifest list sha256:d5e465f3b147657d753c9224ae0f4a8359f490e3e8efd118c78bbe227fda5fa6 0.0s done
#18 naming to docker.io/library/httparena-genhttp-kestrel:latest
#18 naming to docker.io/library/httparena-genhttp-kestrel:latest done
#18 unpacking to docker.io/library/httparena-genhttp-kestrel:latest 0.0s done
#18 DONE 0.1s
[info] tuning host for benchmark runs
[info] CPU governor → performance
[info] setting kernel socket limits
[info] setting UDP buffer sizes for QUIC
[info] setting loopback MTU to 1500 (realistic Ethernet)
[info] restarting docker daemon
[info] dropping kernel caches
[info] starting postgres sidecar
[info] postgres ready (seeded)

==============================================
=== genhttp-kestrel / static / 1024c (tool=wrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
Running 5s test @ http://localhost:8080
  64 threads and 1024 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    11.83ms    8.89ms 218.31ms   87.07%
    Req/Sec     1.40k   257.30     2.90k    86.41%
  443100 requests in 5.08s, 8.92GB read
Requests/sec:  87186.93
Transfer/sec:      1.76GB
[info] CPU 6100.8% | Mem 505MiB

[run 2/3]
Running 5s test @ http://localhost:8080
  64 threads and 1024 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     8.68ms    4.47ms  67.90ms   68.63%
    Req/Sec     1.87k   239.61     7.48k    96.63%
  607861 requests in 5.10s, 12.24GB read
Requests/sec: 119185.84
Transfer/sec:      2.40GB
[info] CPU 6181.7% | Mem 666MiB

[run 3/3]
Running 5s test @ http://localhost:8080
  64 threads and 1024 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     8.69ms    4.43ms  36.50ms   67.79%
    Req/Sec     1.87k   214.86     8.79k    94.39%
  606009 requests in 5.10s, 12.20GB read
Requests/sec: 118822.20
Transfer/sec:      2.39GB
[info] CPU 6128.3% | Mem 654MiB

=== Best: 119185 req/s (CPU: 6181.7%, Mem: 666MiB) ===
[info] saved results/static/1024/genhttp-kestrel.json
httparena-bench-genhttp-kestrel
httparena-bench-genhttp-kestrel

==============================================
=== genhttp-kestrel / static / 4096c (tool=wrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
Running 5s test @ http://localhost:8080
  64 threads and 4096 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    39.53ms   38.56ms 888.62ms   95.34%
    Req/Sec     1.62k   818.33     5.35k    85.41%
  477235 requests in 5.10s, 9.61GB read
Requests/sec:  93567.64
Transfer/sec:      1.88GB
[info] CPU 5863.1% | Mem 1.0GiB

[run 2/3]
Running 5s test @ http://localhost:8080
  64 threads and 4096 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    31.74ms   19.77ms 313.11ms   74.07%
    Req/Sec     1.92k   569.10    13.87k    80.72%
  622708 requests in 5.10s, 12.54GB read
Requests/sec: 122112.61
Transfer/sec:      2.46GB
[info] CPU 6279.8% | Mem 1.5GiB

[run 3/3]
Running 5s test @ http://localhost:8080
  64 threads and 4096 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    32.25ms   25.79ms 503.72ms   87.35%
    Req/Sec     1.98k   642.39    17.33k    83.15%
  627728 requests in 5.10s, 12.64GB read
Requests/sec: 123063.89
Transfer/sec:      2.48GB
[info] CPU 6273.7% | Mem 1.6GiB

=== Best: 123063 req/s (CPU: 6273.7%, Mem: 1.6GiB) ===
[info] saved results/static/4096/genhttp-kestrel.json
httparena-bench-genhttp-kestrel
httparena-bench-genhttp-kestrel

==============================================
=== genhttp-kestrel / static / 6800c (tool=wrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
Running 5s test @ http://localhost:8080
  64 threads and 6800 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    64.67ms   68.90ms   1.01s    95.36%
    Req/Sec     1.65k     1.16k    7.89k    84.42%
  469737 requests in 5.10s, 9.46GB read
Requests/sec:  92095.18
Transfer/sec:      1.85GB
[info] CPU 5781.5% | Mem 1.8GiB

[run 2/3]
Running 5s test @ http://localhost:8080
  64 threads and 6800 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    54.58ms   61.39ms 976.61ms   97.15%
    Req/Sec     2.01k   849.31    14.31k    81.78%
  613246 requests in 5.10s, 12.35GB read
Requests/sec: 120238.56
Transfer/sec:      2.42GB
[info] CPU 6268.2% | Mem 1.8GiB

[run 3/3]
Running 5s test @ http://localhost:8080
  64 threads and 6800 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    51.02ms   33.23ms 532.38ms   79.98%
    Req/Sec     1.89k   681.59     8.83k    78.78%
  611822 requests in 5.10s, 12.32GB read
Requests/sec: 119970.11
Transfer/sec:      2.42GB
[info] CPU 6206.4% | Mem 2.0GiB

=== Best: 120238 req/s (CPU: 6268.2%, Mem: 1.8GiB) ===
[info] saved results/static/6800/genhttp-kestrel.json
httparena-bench-genhttp-kestrel
httparena-bench-genhttp-kestrel
[info] rebuilding site/data/*.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/frameworks.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-6800.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
httparena-postgres
[info] restoring loopback MTU to 65536
[info] restoring CPU governor → powersave

@Kaliumhexacyanoferrat
Copy link
Copy Markdown
Collaborator Author

/benchmark -f genhttp -t static --save

@github-actions
Copy link
Copy Markdown
Contributor

👋 /benchmark request received. A collaborator will review and approve the run.

@github-actions
Copy link
Copy Markdown
Contributor

Benchmark Results

Framework: genhttp | Test: static

Test Conn RPS CPU Mem Δ RPS Δ Mem
static 1024 254,228 5741.4% 482MiB +59.2% -20.7%
static 4096 249,569 5728.3% 1.6GiB +43.2% +14.3%
static 6800 244,271 5795.7% 1.6GiB +44.4% -11.1%
Full log
#4 DONE 0.0s

#5 [stage-1 1/3] FROM mcr.microsoft.com/dotnet/runtime:10.0@sha256:8fb7ff015fcf0ebc6e90105bd6db06875954e6dc3d374b9dbb34c732867d13e4
#5 resolve mcr.microsoft.com/dotnet/runtime:10.0@sha256:8fb7ff015fcf0ebc6e90105bd6db06875954e6dc3d374b9dbb34c732867d13e4 0.1s done
#5 DONE 0.1s

#6 [build 1/6] FROM mcr.microsoft.com/dotnet/sdk:10.0@sha256:8a90a473da5205a16979de99d2fc20975e922c68304f5c79d564e666dc3982fc
#6 resolve mcr.microsoft.com/dotnet/sdk:10.0@sha256:8a90a473da5205a16979de99d2fc20975e922c68304f5c79d564e666dc3982fc 0.1s done
#6 DONE 0.1s

#7 [internal] load build context
#7 transferring context: 20.16kB done
#7 DONE 0.0s

#8 [stage-1 2/3] WORKDIR /app
#8 CACHED

#9 [build 2/6] WORKDIR /source
#9 CACHED

#10 [build 5/6] COPY . .
#10 CACHED

#11 [build 3/6] COPY genhttp.csproj ./
#11 CACHED

#12 [build 4/6] RUN dotnet restore
#12 CACHED

#13 [build 6/6] RUN dotnet publish -c Release --no-self-contained -o /app
#13 CACHED

#14 [stage-1 3/3] COPY --from=build /app .
#14 CACHED

#15 exporting to image
#15 exporting layers done
#15 exporting manifest sha256:277d0dd6e1a64233492ea1fbdc438b4b870ba85fa8c5679391e9c94132ca2809 done
#15 exporting config sha256:1aec801955ab43a796901eb6dce01c0a6a9145e9ce667fd51d8379e64d7bf62b done
#15 exporting attestation manifest sha256:469b5de3909c947ddddd320a98d50fe8b42fb6ce5004ca94dcee6f109d8fc1c4 0.0s done
#15 exporting manifest list sha256:784149d6a2231b9cfa60ddc030ed32f0c7f3024b908edf1c98dff635230c0e61 0.0s done
#15 naming to docker.io/library/httparena-genhttp:latest
#15 naming to docker.io/library/httparena-genhttp:latest done
#15 unpacking to docker.io/library/httparena-genhttp:latest 0.0s done
#15 DONE 0.1s
[info] tuning host for benchmark runs
[info] CPU governor → performance
[info] setting kernel socket limits
[info] setting UDP buffer sizes for QUIC
[info] setting loopback MTU to 1500 (realistic Ethernet)
[info] restarting docker daemon
[info] dropping kernel caches
[info] starting postgres sidecar
[info] postgres ready (seeded)
[info] starting redis sidecar (cpuset=0,64)
[info] redis ready

==============================================
=== genhttp / static / 1024c (tool=wrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
Running 5s test @ http://localhost:8080
  64 threads and 1024 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    17.30ms   24.32ms 150.92ms   83.06%
    Req/Sec     2.51k   569.43     4.67k    66.08%
  806127 requests in 5.10s, 14.46GB read
  Non-2xx or 3xx responses: 1
Requests/sec: 158084.54
Transfer/sec:      2.84GB
[info] CPU 5773.4% | Mem 369MiB

[run 2/3]
Running 5s test @ http://localhost:8080
  64 threads and 1024 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    13.08ms   18.80ms  76.78ms   82.72%
    Req/Sec     4.00k   276.21     8.03k    96.14%
  1296608 requests in 5.10s, 23.25GB read
Requests/sec: 254228.24
Transfer/sec:      4.56GB
[info] CPU 5741.4% | Mem 482MiB

[run 3/3]
Running 5s test @ http://localhost:8080
  64 threads and 1024 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    10.10ms   14.85ms  71.36ms   84.67%
    Req/Sec     3.99k   321.40     9.48k    97.88%
  1295926 requests in 5.10s, 23.24GB read
Requests/sec: 254138.82
Transfer/sec:      4.56GB
[info] CPU 5753.8% | Mem 518MiB

=== Best: 254228 req/s (CPU: 5741.4%, Mem: 482MiB) ===
[info] saved results/static/1024/genhttp.json
httparena-bench-genhttp
httparena-bench-genhttp

==============================================
=== genhttp / static / 4096c (tool=wrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
Running 5s test @ http://localhost:8080
  64 threads and 4096 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    26.27ms   21.56ms 264.55ms   73.64%
    Req/Sec     2.56k   597.04     4.25k    83.85%
  791412 requests in 5.10s, 14.16GB read
Requests/sec: 155151.99
Transfer/sec:      2.78GB
[info] CPU 5707.8% | Mem 678MiB

[run 2/3]
Running 5s test @ http://localhost:8080
  64 threads and 4096 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    17.45ms   12.87ms 227.82ms   64.33%
    Req/Sec     3.81k   649.59    19.24k    91.77%
  1233171 requests in 5.10s, 22.10GB read
Requests/sec: 241817.20
Transfer/sec:      4.33GB
[info] CPU 5729.9% | Mem 1.3GiB

[run 3/3]
Running 5s test @ http://localhost:8080
  64 threads and 4096 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    17.45ms   12.32ms  73.13ms   71.54%
    Req/Sec     3.92k   488.62    15.39k    96.84%
  1272815 requests in 5.10s, 22.80GB read
Requests/sec: 249569.95
Transfer/sec:      4.47GB
[info] CPU 5728.3% | Mem 1.6GiB

=== Best: 249569 req/s (CPU: 5728.3%, Mem: 1.6GiB) ===
[info] saved results/static/4096/genhttp.json
httparena-bench-genhttp
httparena-bench-genhttp

==============================================
=== genhttp / static / 6800c (tool=wrk) ===
==============================================
[info] waiting for server...
[info] server ready

[run 1/3]
Running 5s test @ http://localhost:8080
  64 threads and 6800 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    40.36ms   24.72ms 309.47ms   86.39%
    Req/Sec     2.58k   837.26     6.18k    86.71%
  786852 requests in 5.10s, 14.10GB read
Requests/sec: 154251.65
Transfer/sec:      2.76GB
[info] CPU 5477.8% | Mem 1.1GiB

[run 2/3]
Running 5s test @ http://localhost:8080
  64 threads and 6800 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    26.74ms    9.90ms 241.14ms   80.19%
    Req/Sec     3.84k   683.56    13.52k    80.47%
  1245856 requests in 5.10s, 22.34GB read
Requests/sec: 244271.89
Transfer/sec:      4.38GB
[info] CPU 5795.7% | Mem 1.6GiB

[run 3/3]
Running 5s test @ http://localhost:8080
  64 threads and 6800 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    27.22ms   10.88ms 244.13ms   75.66%
    Req/Sec     3.82k   514.54    12.30k    85.51%
  1238147 requests in 5.10s, 22.19GB read
Requests/sec: 242731.13
Transfer/sec:      4.35GB
[info] CPU 5732.9% | Mem 1.7GiB

=== Best: 244271 req/s (CPU: 5795.7%, Mem: 1.6GiB) ===
[info] saved results/static/6800/genhttp.json
httparena-bench-genhttp
httparena-bench-genhttp
[info] rebuilding site/data/*.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/frameworks.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-1024.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-4096.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/static-6800.json
[updated] /home/diogo/actions-runner/_work/HttpArena/HttpArena/site/data/current.json
[info] done
httparena-postgres
httparena-redis
[info] restoring loopback MTU to 65536
[info] restoring CPU governor → powersave

@Kaliumhexacyanoferrat Kaliumhexacyanoferrat marked this pull request as ready for review April 27, 2026 13:46
@MDA2AV MDA2AV merged commit a53880c into MDA2AV:main Apr 27, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants